package com.dsh.authorityManagement.service;

import com.dsh.authorityManagement.entity.AdminPermission;
import com.dsh.authorityManagement.entity.RoleModel;
import com.dsh.authorityManagement.entity.vo.PermissionMenuVo;
import com.dsh.authorityManagement.entity.vo.UserForPermissionVo;
import com.dsh.authorityManagement.entity.vo.UserIdAndPermissionIdVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface AdminPermissionService {
    List<AdminPermission> selectPermissionTree();

    List<RoleModel> selectAllRole();

    void insertPermissionForRoleAndStoreAndAdmin(@Param("permissionIds") Integer[] permissionIds, @Param("userId") int userId, @Param("storeId") int storeId, @Param("roleId") int roleId);

    //    int selectShipForUserIdAndPermission (int userId,int permissionId);
    void deleteShip(@Param("userIdAndPermissionIdVoList") List<UserIdAndPermissionIdVo> userIdAndPermissionIdVoList);

    List<UserForPermissionVo> selectUserForRoleAndStore(@Param("pId") int pId, @Param("sId") int sId);
    List<PermissionMenuVo> selectLoginSuccessMenu(@Param("userId") int userId);
}
